package com.jason.system.mapper;

import com.jason.system.entity.Number;
import io.swagger.models.auth.In;
import org.apache.ibatis.annotations.Param;

import java.util.Date;
import java.util.List;

/**
 * @author jie
 * @version 1.0
 * success come from self-discipline
 * @date 2021/3/25 17:16
 */
public interface NumberMapper {

  /**
   * 分页查找所有电话号码
   * @return List<Number>
   */
  List<Number> getAllNumbers();

  /**
   * 根据信息查找电话信息
   * @param address 地址
   * @param stuName 学生姓名
   * @return List<Number>
   */
  List<Number> getSearchNumbers(@Param("address") String address , @Param("stuName") String stuName);

  /**
   * 根据时间段获取电话信息
   * @param startTime 开始时间
   * @param endTime 截止时间
   * @return Number
   */
  List<Number> getAllNumbersByTime(@Param("startTime")Date startTime, @Param("endTime") Date endTime);

  /**
   * 根据number查询电话
   * @param number 电话信息
   * @return Number
   */
  Number getNumber(@Param("number") String number);

  /**
   * 添加电话
   * @param number 电话信息
   */
  void insertNumber(@Param("number") Number number);

  /**
   * 修改电话信息
   * @param number 电话信息
   */
  void updateNumber(@Param("number") Number number);

  /**
   * 根据主键删除电话
   * @param nId 电话id
   */
  void deleteNumber(@Param("nId") Integer nId);

  /**
   * 批量删除电话
   * @param nIds 电话ids,以String形式存在，以逗号分割
   */
  void deleteNumbers(@Param("nIds") List<Integer> nIds);

}
